Boolean Optimization From Disjunctive Normal Form